Add fill_crossing_event to be used soon
authorRichard Hult <richard@imendio.com>
Fri, 16 Jan 2009 19:22:01 +0000 (20:22 +0100)
committerAlexander Larsson <alex@localhost.localdomain>
Thu, 2 Apr 2009 08:15:24 +0000 (10:15 +0200)
gdk/quartz/gdkevents-quartz.c

index 0b99a21eb958120024e940140b70900d9b6ef768..c9554275601398427ea75634dd34464392bd1534 100644 (file)
@@ -1397,6 +1397,42 @@ find_window_for_ns_event (NSEvent *nsevent,
   return NULL;
 }
 
+static void
+fill_crossing_event (GdkWindow       *toplevel,
+                     GdkEvent        *event,
+                     NSEvent         *nsevent,
+                     gint             x,
+                     gint             y,
+                     GdkEventType     event_type,
+                     GdkCrossingMode  mode,
+                     GdkNotifyType    detail)
+{
+  GdkWindowObject *private;
+  NSPoint point;
+
+  private = GDK_WINDOW_OBJECT (toplevel);
+
+  point = [nsevent locationInWindow];
+
+  event->any.type = event_type;
+  event->crossing.window = toplevel;
+  event->crossing.subwindow = NULL;
+  event->crossing.time = get_time_from_ns_event (nsevent);
+  event->crossing.x = x;
+  event->crossing.y = y;
+  event->crossing.mode = mode;
+  event->crossing.detail = detail;
+  event->crossing.state = get_keyboard_modifiers_from_ns_event (nsevent);
+
+  convert_window_coordinates_to_root (toplevel,
+                                      event->crossing.x,
+                                      event->crossing.y,
+                                     &event->crossing.x_root,
+                                     &event->crossing.y_root);
+
+  /* FIXME: Focus and button state? */
+}
+
 static void
 fill_button_event (GdkWindow *window,
                    GdkEvent  *event,